//
// Description: 835. Trie字符串统计
// Created by Loading on 2021/12/26.
//

#include <bits/stdc++.h>

using namespace std;

constexpr int N = 100010;

int son[N][26]; // 每个节点的孩子数组
int cnt[N];     // 以每个节点结尾的元素个数
int idx;        // 节点下标，0 既是根节点下标，又是空节点下标

// 插入一个字符串
void insert(string &s) {
    int p = 0;
    for (auto c : s) {
        int u = c - 'a';
        if (!son[p][u]) {
            son[p][u] = ++idx;
        }
        p = son[p][u];
    }
    cnt[p]++;
}

// 查询一个字符串出现了几次
int query(string &s) {
    int p = 0;
    for (auto c : s) {
        int u = c - 'a';
        if (!son[p][u]) {
            return 0;
        }
        p = son[p][u];
    }
    return cnt[p];
}

int main() {
    int n;
    cin >> n;
    while (n--) {
        char op;
        string s;
        cin >> op >> s;
        if (op == 'I') {
            insert(s);
        } else {
            cout << query(s) << endl;
        }
    }

    return 0;
}